home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2007 January, February, March & April
/
Chip-Cover-CD-2007-02.iso
/
Pakiet bezpieczenstwa
/
mini Pentoo LiveCD 2006.1
/
mpentoo-2006.1.iso
/
livecd.squashfs
/
usr
/
include
/
ewl
/
ewl_grid.h
< prev
next >
Wrap
C/C++ Source or Header
|
2006-01-09
|
3KB
|
105 lines
#ifndef __EWL_GRID_H__
#define __EWL_GRID_H__
/**
* @file ewl_grid.h
*
* @defgroup Ewl_Grid Grid The ewl grid widget
* @brief The Ewl Grid widget
* @{
*/
/**
* @themekey /grid/file
* @themekey /grid/group
*/
typedef struct Ewl_Grid_Info Ewl_Grid_Info;
struct Ewl_Grid_Info
{
int override;
int size;
Ewl_Widget *max;
Ecore_List *cross;
};
typedef struct _ewl_grid Ewl_Grid;
#define EWL_GRID(grid) ((Ewl_Grid *)grid)
struct _ewl_grid {
Ewl_Container container;
/*
* horisontal/vertical size of the columns and rows
*/
Ewl_Grid_Info *col_size;
Ewl_Grid_Info *row_size;
int rows, cols;
/*
* Flag indicating space assignment
*/
unsigned int homogeneous_h; /** Horizontal homogeneous flag */
unsigned int homogeneous_v; /** Vertical homogeneous flag */
/*
* total size of the grid widget
*/
int grid_h;
int grid_w;
/*
* list of old children after a reset call
*/
Ecore_List *rchildren;
};
typedef struct _ewl_grid_child Ewl_Grid_Child;
struct _ewl_grid_child
{
int start_col;
int start_row;
int end_col;
int end_row;
};
Ewl_Widget *ewl_grid_new(int cols, int rows);
int ewl_grid_init(Ewl_Grid *g, int cols, int rows);
void ewl_grid_add(Ewl_Grid *g, Ewl_Widget *w,
int start_col, int end_col, int start_row,
int end_row);
void ewl_grid_col_w_set(Ewl_Grid *g, int col, int width);
void ewl_grid_row_h_set(Ewl_Grid *g, int row, int height);
void ewl_grid_col_w_get(Ewl_Grid *g, int col, int *width);
void ewl_grid_row_h_get(Ewl_Grid *g, int row, int *height);
void ewl_grid_reset(Ewl_Grid *g, int rows, int cols);
void ewl_grid_homogeneous_set(Ewl_Grid *g, unsigned int h);
void ewl_grid_hhomogeneous_set(Ewl_Grid *g, unsigned int h);
void ewl_grid_vhomogeneous_set(Ewl_Grid *g, unsigned int h);
unsigned int ewl_grid_hhomogeneous_get(Ewl_Grid *g);
unsigned int ewl_grid_vhomogeneous_get(Ewl_Grid *g);
/*
* Internally used callbacks, override at your own risk.
*/
void ewl_grid_realize_cb(Ewl_Widget *w, void *ev_data, void *user_data);
void ewl_grid_configure_cb(Ewl_Widget *w, void *ev_data, void *user_data);
void ewl_grid_child_show_cb(Ewl_Container *p, Ewl_Widget *c);
void ewl_grid_child_resize_cb(Ewl_Container *p, Ewl_Widget *child,
int size, Ewl_Orientation o);
/**
* @}
*/
#endif /* __EWL_GRID_H__ */